Utilizando um pouco de métodos estendidos
Neste artigo vamos ver como é prático e fácil trabalharmos com métodos estendidos (Extension Methods)
Os métodos de extensão (Extension Methods), são métodos estáticos que podemos utilizar para estender funcionalidades de classes especificas do .NET.
Neste artigo iremos ver um exemplo de método de extensão (extension methods) na qual iremos estender o tipo bool. Mãos a massa!!!
Acredito que em seu projeto você já teve que algumas vezes verificar se um determinado campo bool possui o valor verdadeiro (true) e escreveu algo parecido com esse:
bool? ehAtivo = null;
if (ehAtivo.HasValue && ehAtivo.Value)
{
// eh verdadeiro
}
ou assim
var verdadeiro = (ehAtivo.HasValue && ehAtivo.Value)
Agora vamos fazer esse exemplo criando um método de extensão (extension method) chamado BoolExtension, segue exemplo:
public static class BoolExtension
{
}
Lembro que os métodos de extensão devem ser estáticos.
Agora iremos criar o nosso método de extensão (extension method) chamado IsValid, segue o exemplo.
public static class BoolExtension
{
public static bool IsValid(this bool? value)
{
return (value.HasValue && value.Value);
}
}
O pulo do gato está no this utilizado no primeiro parâmetro do método de extensão (extension method). Agora podemos utilizar em todos os campos bool? do nosso projeto o método de extensão IsValid. Veja abaixo como o nosso código fica mais limpo.
bool? ehAtivo = null;
if (ehAtivo.IsValid())
{
// eh verdadeiro
}
Bom, vou ficando por aqui e caso tenha ficado alguma dúvida deixo abaixo um link para um exemplo no github.
Veja Também:
Artigos Relacionados
Olá, deixe seu comentário para Utilizando um pouco de métodos estendidos
Felipe Duarte